<div class="m-bg">
<h1>SQL 别名（Aliases） </h1>
<p class="intro">通过使用 SQL，可以为表名称或列名称指定别名（Alias）。</p> <h2>SQL 别名（Aliases）</h2> <p>通过使用 SQL，可以为表名称或列名称指定别名（Alias）。</p> <p>基本上，创建别名是为了让列名称的可读性更强。</p> <h3>列的 SQL Alias 语法</h3> <div class="code notranslate"><pre><code class="language-sql"><div> SELECT <em>column_name</em> AS <em>alias_name</em><br/> FROM <em>table_name;</em> </div></code></pre></div> <h3>表的 SQL Alias 语法</h3> <div class="code notranslate"><pre><code class="language-sql"><div> SELECT <em>column_name(s)</em><br/> FROM <em>table_name </em>AS <em>alias_name;</em> </div></code></pre></div> <h2>演示数据库</h2> <p>在本教程中，我们将使用众所周知的 Northwind 样本数据库。</p> <p>下面是选自 "Customers" 表的数据：</p> <table class="reference notranslate">
<tr>
<th>CustomerID</th> <th>CustomerName</th> <th>ContactName</th> <th>Address</th> <th>City</th> <th>PostalCode</th> <th>Country</th> </tr>
<tr>
<td>1<br/><br/>
</td> <td>Alfreds Futterkiste</td> <td>Maria Anders</td> <td>Obere Str. 57</td> <td>Berlin</td> <td>12209</td> <td>Germany</td> </tr>
<tr>
<td>2</td> <td>Ana Trujillo Emparedados y helados</td> <td>Ana Trujillo</td> <td>Avda. de la Constitución 2222</td> <td>México D.F.</td> <td>05021</td> <td>Mexico</td> </tr>
<tr>
<td>3</td> <td>Antonio Moreno Taquería</td> <td>Antonio Moreno</td> <td>Mataderos 2312</td> <td>México D.F.</td> <td>05023</td> <td>Mexico</td> </tr>
</table>
<p>下面是选自 "Orders" 表的数据：</p> <table class="reference notranslate">
<tr>
<th>OrderID</th> <th>CustomerID</th> <th>EmployeeID</th> <th>OrderDate</th> <th>ShipperID</th> </tr>
<tr>
<td>10643</td> <td>1</td> <td>6</td> <td>1997-08-25</td> <td>1</td> </tr>
<tr>
<td>10644</td> <td>88</td> <td>3</td> <td>1997-08-25</td> <td>2</td> </tr>
<tr>
<td>10645</td> <td>34</td> <td>4</td> <td>1997-08-26</td> <td>1</td> </tr>
</table>
<h2>列的 Alias 实例</h2> <p>下面的 SQL 语句指定了两个别名，一个是 CustomerName 列的别名，一个是 ContactName 列的别名。<strong>提示：</strong>如果列名称包含空格，要求使用双引号或方括号：</p> <div class="example margin-b-10"> <h2 class="example">实例</h2> <pre><code class="language-sql"><div class="example_code notranslate"> SELECT CustomerName AS Customer, ContactName AS [Contact Person]<br/> FROM Customers;</div></code></pre> </div> <p>在下面的 SQL 语句中，我们把四个列（Address、City、PostalCode 和 Country）结合在一起，并创建一个名为 "Address" 的别名：</p> <div class="example margin-b-10"> <h2 class="example">实例</h2> <pre><code class="language-sql"><div class="example_code notranslate"> SELECT CustomerName, Address+', '+City+', '+PostalCode+', '+Country AS Address<br/> FROM Customers;</div></code></pre> </div> <h2>表的 Alias 实例</h2> <p>下面的 SQL 语句选取来自客户 "Alfreds Futterkiste" 的所有订单。我们使用 "Customers" 和 "Orders" 表，并分别为它们指定表别名 "c" 和 "o"（通过使用别名让 SQL 更简短）：</p> <div class="example margin-b-10"> <h2 class="example">实例</h2> <pre><code class="language-sql"><div class="example_code notranslate"> SELECT o.OrderID, o.OrderDate, c.CustomerName<br/>FROM Customers AS c, Orders AS o<br/> WHERE c.CustomerName='Alfreds Futterkiste'; </div></code></pre> </div> <p>不带别名的相同的 SQL 语句：</p> <div class="example margin-b-10"> <h2 class="example">实例</h2> <pre><code class="language-sql"><div class="example_code notranslate"> SELECT Orders.OrderID, Orders.OrderDate, Customers.CustomerName<br/>FROM Customers, Orders<br/> WHERE Customers.CustomerName='Alfreds Futterkiste'; </div></code></pre> </div> <p>在下面的情况下，使用别名很有用：</p> <ul class="list-group">
<li class="list-group-item">在查询中涉及超过一个表</li> <li class="list-group-item">在查询中使用了函数</li> <li class="list-group-item">列名称很长或者可读性差</li> <li class="list-group-item">需要把两个列或者多个列结合在一起</li> </ul>
<div class="text-center padding-10 margin-t-5">
</div>
</div>